#ifndef MAINWINDOW_H
#define MAINWINDOW_H

#include <QMainWindow>
#include <QIntValidator>
#include <QDoubleValidator>

#include "sys_control.h"

QT_BEGIN_NAMESPACE
namespace Ui
{
    class MainWindow;
}
QT_END_NAMESPACE

class MainWindow : public QMainWindow
{
    Q_OBJECT

public:
    MainWindow(QWidget *parent = nullptr);
    ~MainWindow();

private slots:

    void on_action_file_openFile_triggered();

    void on_action_file_quit_triggered();

    void on_action_help_document_triggered();//

    void on_action_help_about_triggered();//

    void on_action_window_windowed_triggered();

    void on_action_window_fullScreen_triggered();

    void on_action_window_theme_ElegantDark_triggered();

    void on_action_window_theme_Ubuntu_triggered();

    void on_action_window_theme_Default_triggered();

    void on_action_segmentation_open_triggered();

    void on_action_segmentation_save_triggered();

    void on_action_segmentation_analysis_triggered();

    void on_btn_view3D_layout_clicked();

    void on_btn_view3D_layout_2_clicked();

    void on_btn_viewA_layout_clicked();

    void on_btn_viewS_layout_clicked();

    void on_btn_viewC_layout_clicked();

    void on_lineEdit_cursorPositionX_returnPressed();

    void on_lineEdit_cursorPositionY_returnPressed();

    void on_lineEdit_cursorPositionZ_returnPressed();

    void on_btn_view3D_reset_clicked();

    void on_btn_openFile_clicked();

    void on_btn_analysis_clicked();

    void on_btn_saveAnalysis_clicked();

    void on_action_setting_triggered();

    void on_action_edit_zoom1_triggered();

    void on_action_edit_zoom2_triggered();

    void on_action_edit_zoom4_triggered();

    void on_lineEdit_window_returnPressed();

    void on_lineEdit_level_returnPressed();

    void on_btn_view3D_axes_clicked();

    void on_horizontalSlider_opacity_valueChanged(int value);

    void on_spinBox_opacity_valueChanged(int arg1);

    void on_checkBox_anlsImg_stateChanged(int arg1);

    void on_btn_viewA_screenshot_clicked();

    void on_btn_viewS_screenshot_clicked();

    void on_btn_viewC_screenshot_clicked();

    void on_btn_view3D_screenshot_clicked();

    void on_btn_view3D_screenshot_2_clicked();

    void on_btn_showMessage_clicked();

    void on_btn_mode_clicked();

    void on_btn_tab_clicked();

    void on_comboBox_windowLevel_currentIndexChanged(int index);

private:
    Ui::MainWindow *ui;

    sys_Control *m_sysControl;

    void initUI();

    void loadQss();
};
#endif // MAINWINDOW_H
